
package com.roc.pojo;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Transient;

@Entity
@Table(name = "t_MODULE")
public class Module extends BaseBean implements Serializable{
	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "Module_seq")
	@SequenceGenerator(name = "Module_seq", sequenceName = "Module_seq", allocationSize = 10, initialValue = 1)
	
	private java.lang.Long seq;
	@Column(name="module_code",nullable=false)
	private java.lang.String moduleCode;
	@Column(name="module_name",nullable=false)
	private java.lang.String moduleName;
	@Column(name="module_act",nullable=false)
	private java.lang.String moduleAct;
	@Column(name="display_index")
	private java.lang.Long displayIndex;
	@Column(name="module_desc")
	private java.lang.String moduleDesc;
	@Column(name="category_code",nullable=false)
	private String categoryCode;
	@Column(name="role_type")
	private String roleType;

	@Transient
	private ModuleCategory moduleCategory;
	@Transient
	private List<MerchantModuleRight> userModuleRights = new ArrayList<MerchantModuleRight>();

	

	/**
	 * @return the seq
	 */
	public java.lang.Long getSeq() {
		return seq;
	}

	/**
	 * @param seq the seq to set
	 */
	public void setSeq(java.lang.Long seq) {
		this.seq = seq;
	}

	/**
	 * @return the moduleCode
	 */
	public java.lang.String getModuleCode() {
		return moduleCode;
	}

	/**
	 * @param moduleCode the moduleCode to set
	 */
	public void setModuleCode(java.lang.String moduleCode) {
		this.moduleCode = moduleCode;
	}

	/**
	 * @return the moduleName
	 */
	public java.lang.String getModuleName() {
		return moduleName;
	}

	/**
	 * @param moduleName the moduleName to set
	 */
	public void setModuleName(java.lang.String moduleName) {
		this.moduleName = moduleName;
	}

	/**
	 * @return the displayIndex
	 */
	public java.lang.Long getDisplayIndex() {
		return displayIndex;
	}

	/**
	 * @param displayIndex the displayIndex to set
	 */
	public void setDisplayIndex(java.lang.Long displayIndex) {
		this.displayIndex = displayIndex;
	}

	/**
	 * @return the moduleDesc
	 */
	public java.lang.String getModuleDesc() {
		return moduleDesc;
	}

	/**
	 * @param moduleDesc the moduleDesc to set
	 */
	public void setModuleDesc(java.lang.String moduleDesc) {
		this.moduleDesc = moduleDesc;
	}

	/**
	 * @param moduleCategory the moduleCategory to set
	 */
	public void setModuleCategory(ModuleCategory moduleCategory) {
		this.moduleCategory = moduleCategory;
	}

	/**
	 * @return the moduleCategory
	 */
	public ModuleCategory getModuleCategory() {
		return moduleCategory;
	}

	/**
	 * @param userModuleRights the userModuleRights to set
	 */
	public void setUserModuleRights(List<MerchantModuleRight> userModuleRights) {
		this.userModuleRights = userModuleRights;
	}

	/**
	 * @return the userModuleRights
	 */
	public List<MerchantModuleRight> getUserModuleRights() {
		return userModuleRights;
	}

	

	
	/**
	 * @param moduleAct the moduleAct to set
	 */
	public void setModuleAct(java.lang.String moduleAct) {
		this.moduleAct = moduleAct;
	}

	/**
	 * @return the moduleAct
	 */
	public java.lang.String getModuleAct() {
		return moduleAct;
	}

	
	public String getCategoryCode() {
		return categoryCode;
	}

	public void setCategoryCode(String categoryCode) {
		this.categoryCode = categoryCode;
	}

	/**
	 * @return the roleType
	 */
	public String getRoleType() {
		return roleType;
	}

	/**
	 * @param roleType the roleType to set
	 */
	public void setRoleType(String roleType) {
		this.roleType = roleType;
	}

}
